#pragma once
#include "Common.h"
#include <string>

class EXPORT Effect;
class EXPORT EffectGenerator
{
	EffectGenerator(void);
	~EffectGenerator(void);

	static EffectGenerator * ptr;
	void Init();
	
	
	std::string tempateVS;
	std::string templateFS;

	std::string GenerateDefinesFromMask(int effectMask);
	void InitSections(Effect * effect,int effectMask);
public:
	static EffectGenerator * GetPtr();

	Effect * GenerateEffect(int effectMask);
};

